package com.eascs.ticket.ticket.form;

import java.util.Date;

import javax.validation.constraints.Max;

import com.eascs.app.dao.sql.SqlBuilderExpression;
import com.eascs.app.dao.sql.SqlExpression;
import com.eascs.app.dao.sql.ValueFilterField;
import com.eascs.app.dao.sql.filter.AddOneDayValueFilter;

public class StatWorkForm {

	@SqlBuilderExpression(value = SqlExpression.IN, columnName = "tscl.updator")
	private String operators;
	@SqlBuilderExpression(value = SqlExpression.IN, columnName = "tscl.status_from_to")
	private String statusChangeIns;
	@SqlBuilderExpression(value = SqlExpression.IN, columnName = "tscl.ticket_type_code")
	private String ticketTypeCodes;
	@SqlBuilderExpression(value = SqlExpression.NOT_IN, columnName = "tscl.ticket_type_code")
	private String ticketTypeCodeNotIns;
	@SqlBuilderExpression(value = SqlExpression.IN, columnName = "tscl.project_id")
	private String projectIds;
	@SqlBuilderExpression(value = SqlExpression.NOT_IN, columnName = "tscl.project_id")
	private String projectIdsNotIns;
	@SqlBuilderExpression(value = SqlExpression.EQUAL_OR_GREATER, columnName = "tscl.update_date")
	public Date statDateStart;
	@SqlBuilderExpression(value = SqlExpression.LESSER, columnName = "tscl.update_date")
	@ValueFilterField(valueFilters = { AddOneDayValueFilter.class })
	public Date statDateEnd;

	private String render;
	private int pageIndex;
	@Max(value = 100)
	private int pageSize = 10;

	public String getOperators() {
		return operators;
	}

	public void setOperators(String operators) {
		this.operators = operators;
	}

	public String getRender() {
		return render;
	}

	public void setRender(String render) {
		this.render = render;
	}

	public int getPageIndex() {
		return pageIndex;
	}

	public void setPageIndex(int pageIndex) {
		this.pageIndex = pageIndex;
	}

	public int getPageSize() {
		return pageSize;
	}

	public void setPageSize(int pageSize) {
		this.pageSize = pageSize;
	}

	public String getTicketTypeCodes() {
		return ticketTypeCodes;
	}

	public void setTicketTypeCodes(String ticketTypeCodes) {
		this.ticketTypeCodes = ticketTypeCodes;
	}

	public String getProjectIds() {
		return projectIds;
	}

	public void setProjectIds(String projectIds) {
		this.projectIds = projectIds;
	}

	public String getTicketTypeCodeNotIns() {
		return ticketTypeCodeNotIns;
	}

	public void setTicketTypeCodeNotIns(String ticketTypeCodeNotIns) {
		this.ticketTypeCodeNotIns = ticketTypeCodeNotIns;
	}

	public String getProjectIdsNotIns() {
		return projectIdsNotIns;
	}

	public void setProjectIdsNotIns(String projectIdsNotIns) {
		this.projectIdsNotIns = projectIdsNotIns;
	}

	public Date getStatDateStart() {
		return statDateStart;
	}

	public void setStatDateStart(Date statDateStart) {
		this.statDateStart = statDateStart;
	}

	public Date getStatDateEnd() {
		return statDateEnd;
	}

	public void setStatDateEnd(Date statDateEnd) {
		this.statDateEnd = statDateEnd;
	}

	public String getStatusChangeIns() {
		return statusChangeIns;
	}

	public void setStatusChangeIns(String statusChangeIns) {
		this.statusChangeIns = statusChangeIns;
	}

}
